﻿//mise à jour des infos sur les modèles de données


//demande de refresh des modèles de données
function refreshDataTemplates() {

    var sUrl = urlService + "/getDataTemplates";


    //ouvrir une requete
    var dsLocalArray = new YAHOO.util.XHRDataSource(sUrl);
    dsLocalArray.connMethodPost = true;
    dsLocalArray.responseType = YAHOO.util.XHRDataSource.TYPE_XML;
    dsLocalArray.responseSchema =
	{
	    resultNode: "DataTemplate",
	    fields: [{ key: "Code" }, { key: "Description"}]
	};

    //gestion de la réponse
    dsLocalArray.sendRequest(
	null,
	{ success: function (req, res) {
	    var data = res.results;
	    fillScrollViewData(data);
	}
	}
);

}

//remplir le scrollview avec les data à jour
function fillScrollViewData(data) {

    var html = "";

    for (i = 0; i < data.length; i++) {
        html += "<li>" + data[i].Description + "</li>";

    }

    document.getElementById("listdata").innerHTML = html;
    var tree = new YAHOO.widget.TreeView("treeData");
    tree.render();


}

//demande de refresh des données d'un modèle
function refreshTemplateDatasTree(code, node ) {

    var sUrl = urlService + "/getDataTemplateItems";
    var postData = "code=" + code;

    //ouvrir une requete
    var dsLocalArray = new YAHOO.util.XHRDataSource(sUrl);
    dsLocalArray.connMethodPost = true;

    dsLocalArray.responseType = YAHOO.util.XHRDataSource.TYPE_XML;
    dsLocalArray.responseSchema =
	{
	    resultNode: "DataItem",
	    fields: [{ key: "Code" }, { key: "Description" }, { key: "Value" }, { key: "Uid"} ]
	};


    //gestion de la réponse
    dsLocalArray.sendRequest(postData, { success: function (req, res) {
        var datas = res.results; afficherTemplateDatasTree(datas,node);
    }
    });

}

//alimenter la branche d'un arbre de données d'un modèle de données
function afficherTemplateDatasTree(datas, node) {

    var myTree = node.tree.getRoot();
    
    for (i = 0; i < datas.length; i++) {
        var myobj = {
            label: datas[i].Description,
            myNodeId:node.data.myNodeId + "." + datas[i].Code,
            myValue : datas[i].Value 
        };
        var nodeFils = new YAHOO.widget.TextNode(myobj, node, false);
        

    }
    node.refresh();
    node.expand();


}